package com.example.springdemo.service;

import cn.cool.middleware.biz_exception_retry.types.annotation.BizExceptionRetry;
import cn.cool.middleware.biz_exception_retry.types.annotation.BizWithException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;

@Slf4j
@Service
public class TestRetryService {
//
//    @BizExceptionRetry(
//            exceptionType = "TEST_EXCEPTION",
//            exceptionDesc = "测试异常重试",
//            retryBeanName = "testRetryService",
//            maxRetryNum = 3,
//            memoryRetryMaxNum = 2,
//            memoryRetryIntervalMillis = 1000,
//            exception = @BizWithException(
//                    includes = {RuntimeException.class}
//            )
//    )
//    public String testRetryMethod(String param) {
//        log.info("执行测试方法，参数: {}", param);
//        // 模拟抛出异常
//        throw new RuntimeException("测试异常: " + param);
//    }
//
//    @BizExceptionRetry(
//            exceptionType = "DB_EXCEPTION",
//            exceptionDesc = "数据库操作异常重试",
//            retryBeanName = "testRetryService",
//            maxRetryNum = 5,
//            memoryRetryMaxNum = 1,
//            memoryRetryIntervalMillis = 500,
//            exception = @BizWithException(
//                    includes = {Exception.class}
//            )
//    )
//    public void testDatabaseOperation(String userId) {
//        log.info("执行数据库操作，用户ID: {}", userId);
//        // 模拟数据库操作异常
//        throw new RuntimeException("数据库连接失败");
//    }
} 